import request from "../utils/request";
import { ILoginData, IDeptSearchParams } from "../types/login";
import { IDepth, IUser, IMenu, ISearchParams } from "../types/login";

export default {
  login(params: ILoginData) {
    return request.post("/users/login", params);
  },
  // 部门管理
  // 获取部门列表
  getDeptList(params?: IDeptSearchParams) {
    return request.get<IDepth[]>("/dept/list", params);
  },

  // 获取所有用户信息
  getUserList() {
    return request.get<IUser[]>("/users/all/list");
  },
  // 新增部门
  addDept(params: IDepth) {
    return request.post("/dept/create", params);
  },
  // 编辑部门
  editDept(params: IDepth) {
    return request.post("/dept/edit", params);
  },
  // 删除部门
  deleteDept(params: { _id: string }) {
    return request.post("/dept/delete", params);
  },

  // 菜单管理

  // 获取菜单列表
  getMenuList(params?: ISearchParams) {
    return request.get<IMenu[]>("/menu/list", params);
  },
  // 新增菜单
  createMenu(params: IMenu) {
    return request.post("/menu/create", params);
  },
  // 编辑菜单
  editMenu(params: IMenu) {
    return request.post("/menu/edit", params);
  },
  // 删除菜单
  deleteMenu(params: { _id: string }) {
    return request.post("/menu/delete", params);
  },

  // 获取用户权限列表
  getPermissionList() {
    return request.get<{ menuList: IMenu[]; buttonList: string[] }>(
      "/users/getPermissionList"
    );
  },
};
